package org.windey.client;

/**
 * interface voor settingsbeheer
 * 
 *
 */
public abstract interface WindeySettings
{
	/**
	 * om de settings in te laden
	 * @throws SettingsException fout bij inladen
	 */
	public abstract void loadSettings() throws SettingsException;
	/**
	 * om de defaultsettings in te laden
	 */
	public abstract void loadDefaultSettings();
	/**
	 * om de settings weg te schrijven naar een bestand
	 * @throws SettingsException fout bij wegschrijven
	 */
	public abstract void saveSettings() throws SettingsException;
	/**
	 * vraag emailadres op uit de settings
	 * @return emailadres
	 */
	public abstract String getEmail();
	/**
	 * om een ander emailadres op te slagen
	 * @param email het emailadres dat moet worden opgeslagen
	 */
	public abstract void setEmail(String email);
	/**
	 * vraag paswoord op uit de setings
	 * @return paswoord
	 */
	public abstract String getPassword();
	/**
	 * om nieuw paswoord op te slagen
	 * @param password nieuw paswoord
	 */
	public abstract void setPassword(String password);
	/**
	 * 
	 * @return
	 */
	public abstract boolean getSavePassword();
	/**
	 * 
	 * @param savePassword
	 */
	public abstract void setSavePassword(boolean savePassword);
	/**
	 * om de hostname op te vragen
	 * @return de gesavde hostname
	 */
	public abstract String getHostname();
	/**
	 * om andere hostname in te geven
	 * @param hostname nieuwe hostname
	 */
	public abstract void setHostname(String hostname);
	/**
	 * om de poort op te vragen
	 * @return de gesavde poort
	 */
	public abstract int getPort();
	/**
	 * om nieuwe poort in te geven 
	 * @param port nieuwe poort
	 */
	public abstract void setPort(int port);
}
